package cn.le.exception;

import java.lang.annotation.Annotation;

/**
 * Created by admin on 2017/4/27.
 */
class Annoyance extends Exception {
}
class Sneeze extends Annoyance{
}

class Human{

    public static void main(String[] args) {
        try {
            throw  new Sneeze();
        }

        catch (Annoyance a) //捕获异常必须从小的异常开始,从基类异常会编辑器会报异常
                //因为抛出异常同处理程序声明的异常不要求完全匹配,派生类的对象也可以匹配其基类的处理程序
                //所有如果基类异常先进行捕获,会导致下面的派生异常无法捕获,从而导致程序的异常捕获不精确
        {
            System.out.println("Cuanght Annoyance ");
        }
        /*catch (Sneeze e)
        {
            System.out.println("Cuanght sneeze");
        }*/
    }
}
